Lattice problem
In computer science, lattice problems are a class of optimization problems on lattices. The conjectured intractability of such problems is central to construction of secure lattice-based cryptosystems. For applications in such cryptosystems, lattices over vector spaces (often \mathbb{Q}^n ) or free modules (often \mathbb{Z}^n ) are generally considered. For all the problems below, assume that we are given (in addition to other more specific inputs) a basis for the vector space V'' and a norm ''N. The norms usually considered are ''L''2. However, other norms (such as ''L''p) are also considered and show up in variety of results.Subhash Khot, "Hardness of approximating the shortest vector problem in lattices," J. ACM 52, no. 5 (2005): 789–808. Let \lambda(L) denote the length of the shortest non-zero vector in the lattice L'': \lambda(L)=\mathbf{min} \{ \|v\|_N | v \in \mathbf{L}, v \neq 0 \} . Shortest vector problem (SVP) In SVP, a basis of a vector space ''V and a norm N'' (often ''L''2) are given for a lattice ''L and one must find the shortest non-zero vector in V'', as measured by ''N, in L''. In other words, the algorithm should output a non-zero vector ''v such that N(v)=\lambda(L) . In the \gamma -approximation version SVP_\gamma , one must find a non-zero lattice vector of length at most \gamma \lambda(L) . Known results The exact version of the problem is NP-hard.van Emde Boas, P. 1981. Another NP-complete problem and the complexity of computing short vectors in a lattice. Tech. rep., University of Amsterdam, Department of Mathematics, Netherlands. Technical Report 8104 Approach techniques: Lenstra-Lenstra-Lovasz Basis reduction produces a "relatively short vector" in polynomial time, but does not solve the problem. Kannan's HKZ basis reduction algorithm solves the problem in n^{\frac{n}{2 e} + o(n)} time where n is the dimension. Lastly, Schnorr presented a technique that interpolates between LLL and HKZ called Block Reduction. Block reduction works with HKZ bases and if the number of blocks is chosen to be larger than the dimension, the resulting algorithm Kannan's full HKZ basis reduction. GapSVP The problem GapSVP_\beta consists of differentiating between the instances of SVP in which the answer is at most 1 or larger than \beta , where \beta can be a function a fixed function of n , the number of vectors. Given a basis for the lattice, the algorithm must decide whether \lambda(L) \leq 1 or \lambda(L)>\beta . Like other promise problems, the algorithm is allowed to err on all other cases. Yet another version of the problem is GapSVP_{\zeta,\gamma} for some functions \zeta,\gamma . The input to the algorithm is a basis B and a number d . It is assured that all the vectors in the Gram–Schmidt orthogonalization are of length at least 1, and that \lambda(L(B)) \leq \zeta(n) and that 1 \leq d \leq \zeta(n)/\gamma(n) where n is the dimension. The algorithm must accept if \lambda(L(B)) \leq d , and reject if \lambda(L(B)) \geq \gamma(n).d . For large \zeta ( \zeta(n)>2^{n/2} ), the problem is equivalent to GapSVP_\gamma becauseChris Peikert, "Public-key cryptosystems from the worst-case shortest vector problem: extended abstract," in Proceedings of the 41st annual ACM symposium on Theory of computing (Bethesda, MD, USA: ACM, 2009), 333–342, http://portal.acm.org/citation.cfm?id=1536414.1536461. a preprocessing done using the LLL algorithm makes the second condition (and hence, \zeta ) redundant. Closest vector problem (CVP) In CVP, a basis of a vector space V'' and a metric ''M (often ''L''2) are given for a lattice L'', as well as a vector ''v in V'' but not necessarily in ''L. It is desired to find the vector in L'' closest to ''v (as measured by M). In the \gamma -approximation version CVP_\gamma , one must find a lattice vector at distance at most \gamma . It is a more general case of the shortest vector problem. Relationship with SVP It is a more general case of the shortest vector problem. It is easyDaniele Micciancio and Shafi Goldwasser, Complexity of lattice problems (Springer, 2002) to show that given an oracle for CVP_\gamma (defined below), one can solve SVP_\gamma by making some queries to the oracle. The naive method to find the shortest vector by calling the CVP_\gamma oracle to find the closest vector to 0 does not work because 0 is itself a lattice vector and the algorithm could potentially output 0. The reduction from SVP_\gamma to CVP_\gamma is as follows: Suppose that the input to the SVP_\gamma problem is the basis for lattice B=b_1,b_2,\ldots,b_n . Consider the basis B^i=b_1,\ldots,2b_i,\ldots,b_n and let x_i be the vector returned by CVP_\gamma(B^i, b_i) . The claim is that the shortest vector in the set \{x_i-b_i\} is the shortest vector in the given lattice. Known results Goldreich et al.O. Goldreich et al., "Approximating shortest lattice vectors is not harder than approximating closet lattice vectors," Inf. Process. Lett. 71, no. 2 (1999): 55–61. showed that any hardness of SVP implies the same hardness for CVP. Using PCP tools, Arora et al.Sanjeev Arora et al., "The hardness of approximate optima in lattices, codes, and systems of linear equations," J. Comput. Syst. Sci. 54, no. 2 (1997): 317–331. showed that CVP is hard to approximate within factor 2^{\log^{1-\epsilon}(n)} unless NP \subseteq DTIME(2^{poly(\log n)}) . Dinur et al.I. Dinur et al., "Approximating CVP to Within Almost-Polynomial Factors is NP-Hard," Combinatorica 23, no. 2 (2003): 205–243. strengthened this by giving a NP-hardness result with \epsilon=(\log \log n)^c for c<1/2 . Sphere decoding The algorithm for CVP, especially the Fincke and Pohst variantFincke, U. and Pohst, M., "Improved Methods for Calculating Vectors of Short Length in a Lattice, Including a Complexity Analysis," Math. Comp., vol. 44, no. 170, pp. 463–471, 1985., have been used for, for example, for data detection in multiple-input multiple-output (MIMO) wireless communication systems (for coded and uncoded signals).Biglieri, E. and Calderbank, R. and Constantinides, A. and Goldsmith, A. and Paulraj, A. and Poor, H. V., MIMO Wireless Communications, Cambridge U. P., Cambridge, 2007. Agrell, E. and Eriksson, T. and Vardy, A. and Zeger, K., "Closest Point Search in Lattices," IEEE Trans. Inform. Theory, vol. 48, no. 8, pp. 2201–2214, 2002. http://dx.doi.org/10.1109/TIT.2002.800499. The Fincke-Pohst algorithm was applied in the field of the integer ambiguity resolution of carrier-phase GNSS (GPS). Hassibi, A. and Boyd, S., Integer Parameter Estimation in Linear Models with Applications to GPS, IEEE Trans. Sig. Proc., 46, 11, 2938--2952, 1998. GapCVP This problem is similar to the GapSVP problem. For GapCVP_\beta , the input consists of a lattice basis and a vector v and the algorithm must answer whether * there is a lattice vector such that the distance between it and v is at most 1. * every lattice vector is at a distance greater than \beta away from v . Known results The problem is trivially contained in NP for any approximation factor. SchnorrC. P. Schnorr, Factoring integers and computing discrete logarithms via diophantine approximation, Advances in Cryptology: Proceedings of Eurocrypt '91, in 1987, showed that deterministic polynomial time algorithms can solve the problem for \beta=2^{O(n(\log \log n)^2/\log n)} . Ajtai et al.Miklós Ajtai, Ravi Kumar, and D. Sivakumar, "A sieve algorithm for the shortest lattice vector problem," in Proceedings of the thirty-third annual ACM symposium on Theory of computing (Hersonissos, Greece: ACM, 2001), 601–610, http://portal.acm.org/citation.cfm?doid=380752.380857 showed that probabilistic algorithms can achieve a slightly better approximation factor of \beta=2^{O(n \log \log n/\log n)} In 1993, BanaszczykW. Banaszczyk, New bounds in some transference theorems in the geometry of numbers, Math. Ann. 296 (1993) 625–635. showed that GapCVP_n is in NP \cap coNP . In 2000, Goldreich and GoldwasserOded Goldreich and Shafi Goldwasser, "On the limits of non-approximability of lattice problems," in Proceedings of the thirtieth annual ACM symposium on Theory of computing (Dallas, Texas, United States: ACM, 1998), 1–9, http://portal.acm.org/citation.cfm?id=276704. showed that \beta=\sqrt{n/\log n} puts the problem in both NP and coAM. In 2005, Ahoronov and Regev showed that for some constant c , the problem with \beta=c\sqrt{n} is in NP \cap coNP . For lower bounds, Dinur et al.I. Dinur, G. Kindler, and S. Safra, "Approximating-CVP to within Almost-Polynomial Factors is NP-Hard," in Proceedings of the 39th Annual Symposium on Foundations of Computer Science (IEEE Computer Society, 1998), 99, http://portal.acm.org/citation.cfm?id=796466. showed in 1998 that the problem is NP-hard for \beta=n^{o(1/\log{\log{n}})} . Shortest independent vector problem (SIVP) Given a lattice L of dimension n, the algorithm must output n linearly independent v_1, v_2, \ldots, v_n so that \max \|v_i\| < \max_{B} \|b_i\| where the right hand side considers all basis B=\{b_1,\ldots,b_n\} of the lattice. In the \gamma -approximate version, given a lattice L with dimension n, find n linearly independent vectors v_1, v_2,\ldots, v_n of length max || v_i || ≤ \gamma \lambda(L) Bounded distance decoding This problem is similar to CVP. Given a vector such that its distance from the lattice is at most \lambda(L)/2 , the algorithm must output the closest lattice vector to it. Covering radius problem Given a basis for the lattice, the algorithm must find the largest distance (or in some versions, its approximation) from any vector to the lattice. Shortest basis problem Many problems become easier if the input basis consists of short vectors. An algorithm that solves the Shortest Basis Problem (SBP) must, given an lattice basis B , output an equivalent basis B' such that the length of the longest vector in B' is as short as possible. The approximation version SBP_\gamma problem consist of finding a basis whose longest vector is at most \gamma times longer than the longest vector in the shortest basis. Use in cryptography Average case hardness of problems forms a basis for proofs-of-security for most cryptographic schemes. However, experimental evidence suggests that most NP-hard problems lack this property: they are probably only worst case hard. Many lattice problems have been conjectured or proven to be average-case hard, making them an attractive class of problems to base cryptographic schemes on. Moreover, worst-case hardness of some lattice problems have been used to create secure cryptographic schemes. The use of worst-case hardness in such schemes makes them among the very few schemes that are very likely secure even against Quantum computers. The above lattice problems are easy to solve if the algorithm is provided with a "good" basis. Lattice reduction algorithms aim, given a basis for a lattice, to output a new basis consisting of relatively short, nearly orthogonal vectors. The LLL algorithm{A. K. Lenstra, H. W. Lenstra, Jr., L. Lovász, Factoring polynomials with rational coefficients, Math. Ann. 261 (1982), 515–534.} was an early efficient algorithm for this problem which could output a almost reduced lattice basis in polynomial time. This algorithm and its further refinements were used to break several cryptographic schemes, establishing its status as a very important tool in cryptanalysis. The success of LLL on experimental data led to a belief that lattice reduction might be an easy problem in practice. However, this belief was challenged when in the late 1990s, several new results on the hardness of lattice problems were obtained, starting with the result of Ajtai.M. Ajtai, "Generating hard instances of lattice problems (extended abstract)," in Proceedings of the twenty-eighth annual ACM symposium on Theory of computing (Philadelphia, Pennsylvania, United States: ACM, 1996), 99–108, http://portal.acm.org/citation.cfm?id=237838 In his seminal papersMiklós Ajtai, "The shortest vector problem in L2 is NP-hard for randomized reductions (extended abstract)," in Proceedings of the thirtieth annual ACM symposium on Theory of computing (Dallas, Texas, United States: ACM, 1998), 10–19, http://portal.acm.org/citation.cfm?id=276705, Ajtai showed that the SVP problem was NP-hard and discovered some connections between the worst-case complexity and average-case complexity of some lattice problems. Building on these results, Ajtai and DworkMiklós Ajtai and Cynthia Dwork, "A public-key cryptosystem with worst-case/average-case equivalence," in Proceedings of the twenty-ninth annual ACM symposium on Theory of computing (El Paso, Texas, United States: ACM, 1997), 284–293, http://portal.acm.org/citation.cfm?id=258604 created a public-key cryptosystem whose security could be proven using only the worst case hardness of a certain version of SVP, thus making it the first1Jin-Yi Cai, "The Complexity of Some Lattice Problems," in Algorithmic Number Theory, 2000, 1–32, http://dx.doi.org/10.1007/10722028_1 result to have used worst-case hardness to create secure systems. See also *Lattice-based cryptography *Learning with errors References * Daniele Micciancio: The Shortest Vector Problem is {NP}-hard to approximate to within some constant. SIAM Journal on Computing. 2001, * Phong Q. Nguyen and Jacques Stern, "Lattice Reduction in Cryptology: An Update," in Proceedings of the 4th International Symposium on Algorithmic Number Theory (Springer-Verlag, 2000), 85–112, http://portal.acm.org/citation.cfm?id=749906. * Agrell, E. and Eriksson, T. and Vardy, A. and Zeger, K., "Closest Point Search in Lattices," IEEE Trans. Inform. Theory, vol. 48, no. 8, pp. 2201–2214. http://dx.doi.org/10.1109/TIT.2002.800499 Image:Svp09.png|The SVP by example Image:Cvp3.png‎|The CVP by example Category:Cryptography Category:Mathematical problems